package com.xxxx.yoyo.dao;

import java.util.List;

import com.xxxx.yoyo.bean.User;

/**
 * 和user表打交道的接口,接口中的所有方法都是对user表的操作
 * @author 28993
 *
 */
public interface IUserDao {
	
	/**
	 * 根据 用户名 获取用户
	 * @param username 用户名
	 * @return 返回查到的用户
	 */
	User selectUserByUsername(String username);
	
	
	/**
	 * 添加用户
	 * @param user 要添加的用户
	 * @return 如果添加失败返回0, 添加成功返回1
	 */
	int insertUser(User user);
	
	/**
	 * 根据 用户名和密码 查询用户
	 * @param username 用户名
	 * @param password 密码
	 * @return 返回查到的用户
	 */
	User selectUserByUsernameAndPassword(String username, String password);
	
	/**
	 * 更新用户信息
	 * @param user 用户信息
	 * @return 如果更新成功返回1, 否则返回0
	 */
	int updateUser(User user);
	
	
	/**
	 * 根据用户id查询用户信息
	 * @param userId 用户id
	 * @return 返回查到的用户
	 */
	User selectUserById(int userId);
	
	/**
	 * 获取用户列表
	 * @return 返回获取到的用户列表
	 */
	List<User> selectUserList();
	
	/**
	 * 根据页码和每页条数获取用户列表
	 * @param page 页码
	 * @param size 每页条数
	 * @return 返回获取到的用户列表
	 */
	List<User> selectUserList(int page, int size);
	
	/**
	 * 获取用户数量
	 * @return 返回用户的数量
	 */
	long selectUserCount();
	
}
